package com.ce.pms.system.occupation.service;

import java.util.List;

import com.ce.pms.base.service.IPmsBaseService;
import com.ce.pms.base.vo.SearchVO;
import com.ce.pms.system.occupation.vo.PerfectItemTypeConfigVO;
import com.sitechasia.webx.core.support.Page;

/**
 * 整改项目类型设置Service
 * @author 王浩羽
 *
 */
public interface IPerfectItemTypeConfigService  extends IPmsBaseService
{
	   /**
	    * 功能描述:  查询整改项目类型设置,带排序功能<br>
	    * @param searchVO
	    * @return
	    * Create author: 王浩羽 <br>
	    * Create on:Dec 29, 2008  <br>
	    * Edit author:  <br>
	    * Edit on:    <br>
	    * Why:     <br>
	    */
	   public Page queryPerfectItemTypeConfigListByPage(SearchVO searchVO);

	   /**
	    * 增加整改项目类型设置
	    * 注：名称不能有重复
	    * @param perfectItemTypeConfigVO
	    * @return
	    */
	   public boolean addPerfectItemTypeConfig(PerfectItemTypeConfigVO perfectItemTypeConfigVO);

	   /**
	    * 修改整改项目类型设置
	    * @param perfectItemTypeConfigVO
	    * @return
	    */
	   public boolean editPerfectItemTypeConfig(PerfectItemTypeConfigVO perfectItemTypeConfigVO);

	   /**
	    * 删除整改项目类型设置
	    * @param perfectItemTypeConfigId 整改项目类型设置ID
	    * @return
	    */
	   public boolean deletePerfectItemTypeConfigById(Long perfectItemTypeConfigId);

	   /**
	    * 功能描述: 根据ID查找VO <br>
	    * @param id
	    * @return
	    * Create author: 王浩羽 <br>
	    * Create on:Dec 29, 2008  <br>
	    * Edit author:  <br>
	    * Edit on:    <br>
	    * Why:     <br>
	    */
	   public PerfectItemTypeConfigVO findObjectVOById(Long id);

	   /**
	    * 功能描述:  检查名称是否已经存在，存在则抛出异常<br>
	    * @param perfectItemTypeName
	    * Create author: 王浩羽 <br>
	    * Create on:Dec 25, 2008  <br>
	    * Edit author:  <br>
	    * Edit on:    <br>
	    * Why:     <br>
	    */
	   public void checkExistenceByName(String perfectItemTypeName);

	   /**
	    * 功能描述: 获取所有“整改项目类型” <br>
	    * @return
	    * Create author: 王浩羽 <br>
	    * Create on:Jan 7, 2009  <br>
	    * Edit author:  <br>
	    * Edit on:    <br>
	    * Why:     <br>
	    */
	   public List<PerfectItemTypeConfigVO> queryAllPerfectItemTypeConfig();
}
